<style>

h3 {
	font-size: 14px;
	font-family: "宋体";
	color: red;
	margin-top: 18px;
}

h4 {
	margin-top: 13px;
}

#div1{
    color: white;
    background-color: #337ab7;
}

</style>
<h1>CCAY-Freamwork2.0</h1>
<h2>CCAY-Freamwork2.0 是面向服务,全面支持Web2.0的Java Web开发框架</h2>
<div id="fdiv1">
	<h3>技术架构</h3>
	<p>
		前后端完全分离，前端使用bootstrap作为基础样式库，并提供表格、树、选择控件等丰富的高易用性的UI组件,可满足从微小应用到企业级应用需求;后端采用Spring4作为基础框架，结合CXF提供SOAP及REST
		Web服务,Mybatis提供持久层支持。配合Ehcache、log4j、消息中间件等实现框架功能。</p>
</div>

<div id="div2">
	<h3>特性总述</h3>
	<h4>高可扩展性</h4>
	<p>
		框架本身提供大量的可配置属性，并提供合理的默认值，通常可以通过修改配置属性来实现不同的逻辑（或技术）支持；您可以覆盖任何框架提供的默认逻辑而定制实现自己的逻辑：可以基于框架提供的各个功能的接口来实现扩展，或者覆盖框架中的Spring
		Bean定义，甚至可以覆盖任何一个class类的字节码</p>
	<h4>高可用性</h4>
	<p>
		大多数情况下，框架的提供的可配置属性均可以在非停机方式下动态修改，并立即在系统中体现。可动态添加枚举值，动态修改html,css样式，动态修改邮件模板等，如果系统处于集群部署环境下，这些修改会自动同步到其他JVM中并立即生效。
	</p>
	<h4>高适应性</h4>
	<p>
		您可以将你的应用不做调整（或仅做配置调整）就可以部署在任何J2EE标准的容器中，Jetty,tomcat,Docker,Jboss等；支持集群部署，并具有内建的session同步及缓存同步机制；
	</p>
	<h4>易用性</h4>
	<p>
		为最终系统使用用户，提供大量精心设计的前端UI组件，可以帮助用户方便的使用系统，提供联想录入，历史录入自动完成，弹框选择，表格个性化设置，Excel批量操作等等；为开发人员提供详尽的开发文档及丰富的实例参考，可以使开发人员快速上手并迅速提高；内置多种工程工具，可方便的管理SQL脚本，导入导出配置信息，构建工具等。
	</p>
	<h4>安全性</h4>
	<p>基于RBAC设计，并对角色进行进一步扩展细分，可支持企业级复杂权限需求；使用Shiro作为基础安全框架，提供基于Spring
		Aop方法拦截的调用安全检查；扩展Mybatis动态脚本，提供数据级动态过滤；屏蔽高风险语言特性，例如取消Mybatis
		Mapper的${}的支持；</p>
	<h4>互操作性</h4>
	<p>可借助CXF及Spring方便的暴漏或调用WebService接口</p>
</div>

<div id="div3">
	<h3>核心能力概述</h3>
	<h4>REST服务支持</h4>
	使用CXF对RESTful服务提供支持，可以使用@GET、@POST、@PUT、@DELETE等基于Java标准的RESTful
	API对外提供服务，详情能力请参照CXF官方文档。
	<h4>持久层支持</h4>
	<p>使用Mybatis作为持久化框架，并对Mybatis的动态语言进行扩展： 可以在Mapper
		XML中引用当前系统上下文，从而获取当前用户，角色，语言等信息而无需在作为参数传入； 内置的分页插件可以避免书写分页逻辑；
		内置的扩展标签可以支持动态排序，动态筛选,及基于当前用户权限的数据权限过滤；
		支持多种数据库产品使用相同的mapperXML文件，并可以根据当前数据库产品编写特定逻辑</p>
	<h4>权限系统支持</h4>
	<p>
		基于RBAC设计并对角色进行按照维度细分的权限模型，可以满足从基本权限及任何复杂权限需求的支持。采用Shiro作为基本的权限实现框架，扩展了AOP拦截注解，权限校验，数据权限控制等，并提供前端控制机制，可方便控制菜单按钮依据权限显示。
	</p>
	<h4>缓存支持</h4>
	<p>基于Spring
		Cache，默认采用Ehcache作为实现，并支持分散配置方式，您可以在您任意位置申明cache类型；抛弃复杂的，具体实现相关缓存集群同步机制，内建的基于HTTP的缓存机制可以在集群环境下自动同步缓存。
	</p>
	<h4>枚举型支持</h4>
	<p>
		为了完全避免魔鬼数字的出现，对Java语言的枚举类型语义进行了扩展,支持动态扩展枚举项；在JavaScript,CXF数据绑定，POJO,Mybatis
		MppperXml中均提供支持；</p>
	<h4>异步消息支持</h4>
	<p>
		提供异步消息具体实现无关的异步处理框架，可以在编写极少量代码的情况下，方便的实现异步操作。具体消息实现可以采用ThreadPool模拟，ActiveMQ、JBoosMQ、Web
		Sphere MQ等任何JMS标准实现，并支持Kafka。</p>
	<h4>国际化支持</h4>
	<p>
		支持国际化动态加载，意味着您可以在非停机状态下修改国际化；国际化信息均使用内存缓存，并在修改时可自动同步到多个JVM中；支持标准的ResourceBundle方式使用JAVA
		API获取国际化;前端使用HTML标签扩展属性及JavaScript支持国际化；</p>
	<h4>虚拟文件系统支持</h4>
	<p>您不用关心具体文件的存储位置，基于Apache
		VFS2.0封装的VFS模块将文件存储抽象为3种存储位置：临时位置，工作位置，归档位置。实际位置可以是Apache
		VFS2.0支持的任何文件协议路径：如本地文件系统,FTP,HDFS等。VFS模块提供常用的API完成文件的创建、删除、修改、解压、压缩、复制等功能。
	</p>
	<h4>class动态覆盖支持</h4>
	<p>基于Java
		Instrumentation机制，您可以修改CCAY框架或框架依赖的包中的任意class的字节码。在框架或第3方包没有合适扩展设计时，这个功能可避免你手动替换JAR中的.class文件。
	</p>
	<h4>文件上传下载支持</h4>
	<p>基于Apache
		Fileupload及VFS，提供IUploadFileConsumer接口，可以让您在自定义上传处理逻辑。例如：权限验证、文档类型验证、上传文件处理、文件存储位置转储。下载提供多线程处理支持，并提供IDownloadSupport接口，可以验证下载权限，下载文件流预处理等
	</p>
	<h4>Excel导入导出支持</h4>
	<p>基于PIO自定义的XML
		Schema可以使您方便的开发Excel的导入导出功能。可通过XML指定导入导出的列，列类型，验证器，错误提示信息，及是否将错误提示信息可附加到导入文件等，导入的IExcelDataConsumer允许您按批处理数据（如验证，持久化等），导出的IExcelDataProvider允许您按批提供数据（如分页装载的结果集或ResultSet结果集）；导入导出支持百万级数据量。
	</p>
	<h4>注册项支持</h4>
	<p>注册项类似与Java
		Property，CCAY框架中的很多可配置数据均通过注册项的方式提供。注册项允许你从文件、数据库、甚至是某个远程配置中心加载注册项；支持动态修改注册项的值，并同步到集群中的多个JVM中；支持字符串、数字等基本类型也支持基于JSON的复杂类型；
	</p>
	<h4>审计日志支持</h4>
	<p>
		可以通过AOP的后置通知注解，方便的读取方法调用参数中的值，采用异步方式记录审计日志；提供API函数可以在你需要的任何地方生成并记录审计日志。
	</p>
	<h4>SQL脚本导出支持</h4>
	<p>您可以像管理代码一样管理你的SQL脚本，可以通过内建的Maven插件命令导出集中了的SQL脚本文件。</p>
	<h4>Maven骨架工程</h4>
	<p>提供的Maven Archetype,可以帮助你在瞬间搭建好基于CCAY-Freamwork的工程结构。</p>
	<h4>UI</h4>
	<p>基于Bootstrap并融合了近百种基于Bootstrap流行的UI组件；对前端操作的核心功能及组件进行了JavaScript
		API封装，可更容易的使用这些组件；提供了大量的示例及API说明文档，您几乎可以找到您所要用的所有UI示例。</p>
</div>